Cú pháp Tên máy chủ

Tên máy chủ bao gồm một chuỗi các nhãn nối với nhau bằng các dấu chấm. Lấy ví dụ, "vi.wikipedia.org" là một tên máy chủ. Mỗi nhãn phải dài từ 1 đến 63 ký tự.[2] Toàn bộ tên máy chủ bao gồm cả các dấu chấm phân cách có độ dài tối đa là 253 ký tự ASCII.[3]

Các tiêu chuẩn Internet (Đề nghị duyệt thảo và bình luận) đối với các giao thức quy định rằng các nhãn chỉ có thể chứa được các chữ cái ASCII từ a đến z (không phân biệt chữ hoa chữ thường), các chữ số từ 0 đến 9 và ký tự gạch nối-trừ ('-'). Đặc tả kỹ thuật ban đầu cho tên máy chủ trong RFC 952 không cho phép các nhãn bắt đầu bằng chữ số hoặc ký tự gạch nối và không được kết thúc bằng dấu gạch nối. Tuy nhiên với đặc tả kỹ thuật tiếp theo (RFC 1123) thì các nhãn tên máy chủ đã được phép bắt đầu bằng các chữ số. Không cho phép các ký hiệu, ký tự dấu câu hoặc khoảng trắng khác. Các tên miền quốc tế hóa được lưu trữ trong hệ thống tên miền dưới dạng chuỗi ASCII bằng cách áp dụng mã hóa Punycode.[4]

Mặc dù tên máy chủ có thể không chứa các ký tự khác, chẳng hạn như ký tự gạch dưới (_), các tên DNS khác có thể chứa dấu gạch dưới.[5][6] Hạn chế này đã được gỡ bỏ bởi RFC 2181. Các hệ thống như DomainKeysbản ghi SRV sử dụng dấu gạch dưới như một cách để đảm bảo rằng ký tự đặc biệt của chúng không bị nhầm lẫn với tên máy chủ. Lấy ví dụ, _http._sctp.www.example.com chỉ định một con trỏ dịch vụ cho một máy chủ web SCTP (www) trong tên miền example.com. Bất chấp các tiêu chuẩn, Chrome, Firefox, Internet Explorer, EdgeSafari cho phép dấu gạch dưới trong tên máy chủ mặc dù cookie trong IE không hoạt động chính xác nếu bất kỳ phần nào của tên máy chủ chứa ký tự gạch dưới.[7]

Tuy nhiên vẫn sẽ hợp lệ trong việc cố phân giải một tên máy chủ có dấu gạch dưới. Ví dụ như _.example.com. Điều này được đặc tả trong bản RFC 7816 áp dụng để giảm lượng thông tin được cung cấp cho các máy chủ DNS trung gian trong một truy vấn lặp.[8] Tính năng thu nhỏ tên truy vấn được bật theo mặc định trong BIND 9.14.0.[9]

Tên máy chủ vi.wikipedia.org bao gồm các nhãn DNS vi (tên máy chủ hoặc tên miền phụ), wikipedia (tên miền cấp 2) và org (tên miền cấp cao). Các nhãn như 2600 và 3abc có thể được sử dụng trong các tên máy chủ nhưng -hi-, _hi_ và *hi* thì đều là các nhãn không hợp lệ.

Tên máy chủ được coi là một tên miền đầy đủ (FQDN) khi nó được xác định tất cả các nhãn và cả tên miền cấp cao nhất (TLD). Tên máy chủ vi.wikipedia.org kết thúc với tên miền cấp cao nhất org và do đó hoàn toàn đủ điều kiện được xem là một tên miền đầy đủ. Tùy thuộc vào việc triển khai phần mềm DNS của hệ điều hành thì một tên máy chủ không đủ tiêu chuẩn có thể được tự động kết hợp với một tên miền mặc định được cấu hình sẵn trong hệ thống để trở thành một tên miền đầy đủ. Lấy ví dụ một học sinh của MIT có thể gửi thư đến "joe@csail" và để nó tự động định danh tên miền đầy đủ bởi hệ thống gửi thư, cuối cùng thư sẽ được gửi tới joecsail.mit.edu.

Hướng dẫn chung về việc chọn một tên máy chủ tốt được nêu trong RFC 1178.